package Sort.sort2020;

/**
 * 插入排序
 *
 * @author leiwenkang
 * @date 2020/3/29
 */
public class InsertSort {
    public static void main(String[] args) {
        int[] array = {3, 8, 4, 6, 7, 2, 5, 9, 1};
        insertSort(array);
        for (int i = 0; i < array.length; i++) {
            System.out.print(array[i]);
            System.out.print(" ");
        }
    }

    public static void insertSort(int[] array) {
        if (array == null || array.length == 0) {
            return;
        }

        for (int i = 1; i < array.length; i++) {
            if (array[i] < array[i - 1]) {
                //找到插入的位置
                int val = array[i];
                int j;
                for (j = i - 1; j >= 0 && array[j] > val; j--) {
                    array[j + 1] = array[j];
                }
                array[j + 1] = val;
            }
        }

    }
}
